<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Eigen: Matrix.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="eigendoxy.css" rel="stylesheet" type="text/css">
<!--  -->
<script type="text/javascript" src="eigen_navtree_hacks.js"></script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="Eigen_Silly_Professor_64x64.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname"><a href="http://eigen.tuxfamily.org">Eigen</a>
   &#160;<span id="projectnumber">3.4.90 (git rev 67eeba6e720c5745abc77ae6c92ce0a44aa7b7ae)</span>
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.svg"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Matrix_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">Matrix.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// This file is part of Eigen, a lightweight C++ template library</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// for linear algebra.</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">// Copyright (C) 2006-2010 Benoit Jacob &lt;jacob.benoit.1@gmail.com&gt;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// Copyright (C) 2008-2009 Gael Guennebaud &lt;gael.guennebaud@inria.fr&gt;</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// This Source Code Form is subject to the terms of the Mozilla</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">// Public License v. 2.0. If a copy of the MPL was not distributed</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#ifndef EIGEN_MATRIX_H</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#define EIGEN_MATRIX_H</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;./InternalHeaderCheck.h&quot;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceEigen.html">Eigen</a> {</div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160; </div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="keyword">namespace </span>internal {</div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> Scalar_, <span class="keywordtype">int</span> Rows_, <span class="keywordtype">int</span> Cols_, <span class="keywordtype">int</span> Options_, <span class="keywordtype">int</span> MaxRows_, <span class="keywordtype">int</span> MaxCols_&gt;</div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="keyword">struct </span>traits&lt;Matrix&lt;Scalar_, Rows_, Cols_, Options_, MaxRows_, MaxCols_&gt; &gt;</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;{</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;  constexpr <span class="keyword">static</span> <span class="keywordtype">int</span> size = internal::size_at_compile_time(Rows_,Cols_);</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;  <span class="keyword">typedef</span> <span class="keyword">typename</span> find_best_packet&lt;Scalar_,size&gt;::type PacketScalar;</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;  <span class="keyword">enum</span> {</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;      row_major_bit = Options_&amp;<a class="code" href="group__enums.html#ggaacded1a18ae58b0f554751f6cdf9eb13a77c993a8d9f6efe5c1159fb2ab07dd4f">RowMajor</a> ? <a class="code" href="group__flags.html#gae4f56c2a60bbe4bd2e44c5b19cbe8762">RowMajorBit</a> : 0,</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;      is_dynamic_size_storage = MaxRows_==<a class="code" href="namespaceEigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a> || MaxCols_==<a class="code" href="namespaceEigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;      max_size = is_dynamic_size_storage ? <a class="code" href="namespaceEigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a> : MaxRows_*MaxCols_,</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;      default_alignment = compute_default_alignment&lt;Scalar_,max_size&gt;::value,</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;      actual_alignment = ((Options_&amp;<a class="code" href="group__enums.html#ggaacded1a18ae58b0f554751f6cdf9eb13a56908522e51443a0aa0567f879c2e78a">DontAlign</a>)==0) ? default_alignment : 0,</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;      required_alignment = unpacket_traits&lt;PacketScalar&gt;::alignment,</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;      packet_access_bit = (packet_traits&lt;Scalar_&gt;::Vectorizable &amp;&amp; (EIGEN_UNALIGNED_VECTORIZE || (actual_alignment&gt;=required_alignment))) ? <a class="code" href="group__flags.html#ga1a306a438e1ab074e8be59512e887b9f">PacketAccessBit</a> : 0</div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    };</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;  <span class="keyword">typedef</span> Scalar_ Scalar;</div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;  <span class="keyword">typedef</span> Dense StorageKind;</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;  <span class="keyword">typedef</span> <a class="code" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Eigen::Index</a> StorageIndex;</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;  <span class="keyword">typedef</span> MatrixXpr XprKind;</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;  <span class="keyword">enum</span> {</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;    RowsAtCompileTime = Rows_,</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;    ColsAtCompileTime = Cols_,</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    MaxRowsAtCompileTime = MaxRows_,</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;    MaxColsAtCompileTime = MaxCols_,</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    Flags = compute_matrix_flags(Options_),</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    Options = Options_,</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    InnerStrideAtCompileTime = 1,</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    OuterStrideAtCompileTime = (Options&amp;<a class="code" href="group__enums.html#ggaacded1a18ae58b0f554751f6cdf9eb13a77c993a8d9f6efe5c1159fb2ab07dd4f">RowMajor</a>) ? ColsAtCompileTime : RowsAtCompileTime,</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="comment">// FIXME, the following flag in only used to define NeedsToAlign in PlainObjectBase</span></div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;    EvaluatorFlags = <a class="code" href="group__flags.html#ga4b983a15d57cd55806df618ac544d09e">LinearAccessBit</a> | <a class="code" href="group__flags.html#gabf1e9d0516a933445a4c307ad8f14915">DirectAccessBit</a> | packet_access_bit | row_major_bit,</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;    Alignment = actual_alignment</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;  };</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;};</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;}</div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> Scalar_, <span class="keywordtype">int</span> Rows_, <span class="keywordtype">int</span> Cols_, <span class="keywordtype">int</span> Options_, <span class="keywordtype">int</span> MaxRows_, <span class="keywordtype">int</span> MaxCols_&gt;</div>
<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html">  180</a></span>&#160;<span class="keyword">class </span><a class="code" href="classEigen_1_1Matrix.html">Matrix</a></div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  : <span class="keyword">public</span> <a class="code" href="classEigen_1_1PlainObjectBase.html">PlainObjectBase</a>&lt;Matrix&lt;Scalar_, Rows_, Cols_, Options_, MaxRows_, MaxCols_&gt; &gt;</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;{</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#ab21dfb33fedb86d054bb3ff711134c04">  188</a></span>&#160;    <span class="keyword">typedef</span> <a class="code" href="classEigen_1_1PlainObjectBase.html">PlainObjectBase&lt;Matrix&gt;</a> <a class="code" href="classEigen_1_1Matrix.html#ab21dfb33fedb86d054bb3ff711134c04">Base</a>;</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160; </div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keyword">enum</span> { Options = Options_ };</div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160; </div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    EIGEN_DENSE_PUBLIC_INTERFACE(<a class="code" href="classEigen_1_1Matrix.html">Matrix</a>)</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160; </div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keyword">typedef</span> <span class="keyword">typename</span> Base::PlainObject PlainObject;</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    <span class="keyword">using</span> Base::base;</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="keyword">using</span> <a class="code" href="classEigen_1_1PlainObjectBase.html#a992d58b5453e441dcfc80f21c2bfd1d7">Base::coeffRef</a>;</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">  208</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">operator=</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; other)</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    {</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="classEigen_1_1PlainObjectBase.html#a09c4b519ee4c635144581e9fe03b6174">Base::_set</a>(other);</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    }</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">operator=</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html">DenseBase&lt;OtherDerived&gt;</a>&amp; other)</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    {</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="classEigen_1_1PlainObjectBase.html#a09c4b519ee4c635144581e9fe03b6174">Base::_set</a>(other);</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    }</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <span class="comment">/* Here, doxygen failed to copy the brief information when using \copydoc */</span></div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160; </div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a315af106ac77958aa923080975476ec9">  238</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a315af106ac77958aa923080975476ec9">operator=</a>(<span class="keyword">const</span> <a class="code" href="structEigen_1_1EigenBase.html">EigenBase&lt;OtherDerived&gt;</a> &amp;other)</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    {</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="classEigen_1_1PlainObjectBase.html#afbf3af8d6195c9b1b2103c2dd1231247">Base::operator=</a>(other);</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;    }</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160; </div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">operator=</a>(<span class="keyword">const</span> ReturnByValue&lt;OtherDerived&gt;&amp; func)</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    {</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="classEigen_1_1PlainObjectBase.html#afbf3af8d6195c9b1b2103c2dd1231247">Base::operator=</a>(func);</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;    }</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160; </div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">  261</a></span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>() : Base()</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    {</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;      EIGEN_INITIALIZE_COEFFS_IF_THAT_OPTION_IS_ENABLED</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    }</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160; </div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="comment">// FIXME is it still needed</span></div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>(internal::constructor_without_unaligned_array_assert)</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;      : <a class="code" href="classEigen_1_1Matrix.html#ab21dfb33fedb86d054bb3ff711134c04">Base</a>(internal::constructor_without_unaligned_array_assert())</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    { EIGEN_INITIALIZE_COEFFS_IF_THAT_OPTION_IS_ENABLED }</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160; </div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>(<a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>&amp;&amp; other) EIGEN_NOEXCEPT_IF(std::is_nothrow_move_constructible&lt;Scalar&gt;::value)</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;      : <a class="code" href="classEigen_1_1Matrix.html#ab21dfb33fedb86d054bb3ff711134c04">Base</a>(std::move(other)) {}</div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">operator=</a>(<a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>&amp;&amp; other) EIGEN_NOEXCEPT_IF(std::is_nothrow_move_assignable&lt;Scalar&gt;::value)</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;    {</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;      <a class="code" href="classEigen_1_1PlainObjectBase.html#afbf3af8d6195c9b1b2103c2dd1231247">Base::operator=</a>(std::move(other));</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;      <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    }</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160; </div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">typename</span>... ArgTypes&gt;</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a5d58c5471254bae011db86ce33491fe0">  291</a></span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a5d58c5471254bae011db86ce33491fe0">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; a0, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; a1, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; a2,  <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; a3, <span class="keyword">const</span> ArgTypes&amp;... args)</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;      : Base(a0, a1, a2, a3, args...) {}</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160; </div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a1b552edeee11ced34c3e471ad00b820a">  316</a></span>&#160;    <span class="keyword">explicit</span> EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html#a1b552edeee11ced34c3e471ad00b820a">Matrix</a>(<span class="keyword">const</span> std::initializer_list&lt;std::initializer_list&lt;Scalar&gt;&gt;&amp; list) : Base(list) {}</div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">#ifndef EIGEN_PARSED_BY_DOXYGEN</span></div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160; </div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    <span class="comment">// This constructor is for both 1x1 matrices and dynamic vectors</span></div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>(<span class="keyword">const</span> T&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>)</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    {</div>
<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;      Base::template _init1&lt;T&gt;(<a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>);</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    }</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160; </div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T0, <span class="keyword">typename</span> T1&gt;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>(<span class="keyword">const</span> T0&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>, <span class="keyword">const</span> T1&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>)</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    {</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;      Base::template _init2&lt;T0,T1&gt;(<a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>, <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>);</div>
<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    }</div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160; </div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160; </div>
<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00339"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a9c6ab29ab3dd0db13433b3636c5ebfea">  339</a></span>&#160;    <span class="keyword">explicit</span> <a class="code" href="classEigen_1_1Matrix.html#a9c6ab29ab3dd0db13433b3636c5ebfea">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a> *<a class="code" href="classEigen_1_1PlainObjectBase.html#ac54123f62de4c46a9107ff53890b6116">data</a>);</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160; </div>
<div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a27a8efe2c7816924bb3fa81fae2eccfd">  353</a></span>&#160;    EIGEN_STRONG_INLINE <span class="keyword">explicit</span> <a class="code" href="classEigen_1_1Matrix.html#a27a8efe2c7816924bb3fa81fae2eccfd">Matrix</a>(<a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a> dim);</div>
<div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a85301ae1433ae244db658efeaca5e15b">  356</a></span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a85301ae1433ae244db658efeaca5e15b">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>);</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a571b7a190bf9987498b2a04426777a86">  370</a></span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a571b7a190bf9987498b2a04426777a86">Matrix</a>(<a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a> rows, <a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a> cols);</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160; </div>
<div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#ad799b74bdca9f0218befcb18705a2ef8">  374</a></span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#ad799b74bdca9f0218befcb18705a2ef8">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>);</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;<span class="preprocessor">    #endif  </span><span class="comment">// end EIGEN_PARSED_BY_DOXYGEN</span></div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160; </div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a240e63c0fd30ba22eeeb2abb673d7c19">  381</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html#a240e63c0fd30ba22eeeb2abb673d7c19">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#a858151a06b8c0ff407232d84e695dd73">z</a>)</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    {</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;      EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(<a class="code" href="classEigen_1_1Matrix.html">Matrix</a>, 3)</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;      m_storage.data()[0] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>;</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;      m_storage.data()[1] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>;</div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;      m_storage.data()[2] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#a858151a06b8c0ff407232d84e695dd73">z</a>;</div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    }</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a6cee96574e19e9544b0a92ea88ba0da9">  392</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html#a6cee96574e19e9544b0a92ea88ba0da9">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#a858151a06b8c0ff407232d84e695dd73">z</a>, <span class="keyword">const</span> <a class="code" href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Scalar</a>&amp; <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af683e04b3926aaf4091581ca24ca09ad">w</a>)</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;    {</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;      EIGEN_STATIC_ASSERT_VECTOR_SPECIFIC_SIZE(<a class="code" href="classEigen_1_1Matrix.html">Matrix</a>, 4)</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;      m_storage.data()[0] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">x</a>;</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;      m_storage.data()[1] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">y</a>;</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;      m_storage.data()[2] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#a858151a06b8c0ff407232d84e695dd73">z</a>;</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;      m_storage.data()[3] = <a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af683e04b3926aaf4091581ca24ca09ad">w</a>;</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;    }</div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160; </div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160; </div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a725fc652d520c910061aefabcf7ae322">  404</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html#a725fc652d520c910061aefabcf7ae322">Matrix</a>(<span class="keyword">const</span> <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&amp; other) : Base(other)</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    { }</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160; </div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classEigen_1_1Matrix.html#a32c538a4270278d978c259a044b119c8">  412</a></span>&#160;    EIGEN_STRONG_INLINE <a class="code" href="classEigen_1_1Matrix.html#a32c538a4270278d978c259a044b119c8">Matrix</a>(<span class="keyword">const</span> <a class="code" href="structEigen_1_1EigenBase.html">EigenBase&lt;OtherDerived&gt;</a> &amp;other)</div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;      : Base(other.<a class="code" href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01DirectWriteAccessors_01_4.html#a1fbabe7f12bcbfba3b9a448b1f5e46fa">derived</a>())</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    { }</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160; </div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    <span class="keyword">inline</span> <a class="code" href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Index</a> innerStride() const EIGEN_NOEXCEPT { <span class="keywordflow">return</span> 1; }</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;    EIGEN_DEVICE_FUNC EIGEN_CONSTEXPR</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;    <span class="keyword">inline</span> <a class="code" href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Index</a> outerStride() const EIGEN_NOEXCEPT { <span class="keywordflow">return</span> this-&gt;<a class="code" href="classEigen_1_1DenseBase.html#a58ca41d9635a8ab3c5a268ef3f7f0d75">innerSize</a>(); }</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160; </div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160; </div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>(<span class="keyword">const</span> RotationBase&lt;OtherDerived,ColsAtCompileTime&gt;&amp; r);</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> OtherDerived&gt;</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;    EIGEN_DEVICE_FUNC</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    <a class="code" href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Matrix</a>&amp; <a class="code" href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">operator=</a>(<span class="keyword">const</span> RotationBase&lt;OtherDerived,ColsAtCompileTime&gt;&amp; r);</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160; </div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    <span class="comment">// allow to extend Matrix outside Eigen</span></div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;<span class="preprocessor">    #ifdef EIGEN_MATRIX_PLUGIN</span></div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;<span class="preprocessor">    #include EIGEN_MATRIX_PLUGIN</span></div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="preprocessor">    #endif</span></div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160; </div>
<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;  <span class="keyword">protected</span>:</div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> Derived, <span class="keyword">typename</span> OtherDerived, <span class="keywordtype">bool</span> IsVector&gt;</div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;    <span class="keyword">friend</span> <span class="keyword">struct </span>internal::conservative_resize_like_impl;</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160; </div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keyword">using</span> Base::m_storage;</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;};</div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160; </div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;<span class="preprocessor">#define EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, Size, SizeSuffix)   \</span></div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;<span class="preprocessor">                                    \</span></div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;<span class="preprocessor">          \</span></div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;<span class="preprocessor">typedef Matrix&lt;Type, Size, Size&gt; Matrix##SizeSuffix##TypeSuffix;  \</span></div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;<span class="preprocessor">                                    \</span></div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;<span class="preprocessor">             \</span></div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;<span class="preprocessor">typedef Matrix&lt;Type, Size, 1&gt;    Vector##SizeSuffix##TypeSuffix;  \</span></div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="preprocessor">                                    \</span></div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="preprocessor">             \</span></div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;<span class="preprocessor">typedef Matrix&lt;Type, 1, Size&gt;    RowVector##SizeSuffix##TypeSuffix;</span></div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160; </div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;<span class="preprocessor">#define EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, Size)         \</span></div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;<span class="preprocessor">                                    \</span></div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;<span class="preprocessor">       \</span></div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="preprocessor">typedef Matrix&lt;Type, Size, Dynamic&gt; Matrix##Size##X##TypeSuffix;  \</span></div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="preprocessor">                                    \</span></div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;<span class="preprocessor">       \</span></div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;<span class="preprocessor">typedef Matrix&lt;Type, Dynamic, Size&gt; Matrix##X##Size##TypeSuffix;</span></div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160; </div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;<span class="preprocessor">#define EIGEN_MAKE_TYPEDEFS_ALL_SIZES(Type, TypeSuffix) \</span></div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;<span class="preprocessor">EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 2, 2) \</span></div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;<span class="preprocessor">EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 3, 3) \</span></div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;<span class="preprocessor">EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 4, 4) \</span></div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;<span class="preprocessor">EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, Dynamic, X) \</span></div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;<span class="preprocessor">EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 2) \</span></div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;<span class="preprocessor">EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 3) \</span></div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;<span class="preprocessor">EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 4)</span></div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160; </div>
<div class="line"><a name="l00499"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga757e178bb30b809f0aef66d97ced667a">  499</a></span>&#160;EIGEN_MAKE_TYPEDEFS_ALL_SIZES(<span class="keywordtype">int</span>,                  i)</div>
<div class="line"><a name="l00500"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga36b8989b6aa63020139fc36bae6979e0">  500</a></span>&#160;EIGEN_MAKE_TYPEDEFS_ALL_SIZES(<span class="keywordtype">float</span>,                f)</div>
<div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga3b934095f8a2834e6cc27267427239d3">  501</a></span>&#160;EIGEN_MAKE_TYPEDEFS_ALL_SIZES(<span class="keywordtype">double</span>,               d)</div>
<div class="line"><a name="l00502"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga72a19eccc523e6a3be2d2f6d5eb3e8f9">  502</a></span>&#160;EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex&lt;<span class="keywordtype">float</span>&gt;,  cf)</div>
<div class="line"><a name="l00503"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga202b9ee6eca6f9329f0ab85669cbff2a">  503</a></span>&#160;EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex&lt;<span class="keywordtype">double</span>&gt;, cd)</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160; </div>
<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;<span class="preprocessor">#undef EIGEN_MAKE_TYPEDEFS_ALL_SIZES</span></div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;<span class="preprocessor">#undef EIGEN_MAKE_TYPEDEFS</span></div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="preprocessor">#undef EIGEN_MAKE_FIXED_TYPEDEFS</span></div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160; </div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;<span class="preprocessor">#define EIGEN_MAKE_TYPEDEFS(Size, SizeSuffix)                        \</span></div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;<span class="preprocessor">                                       \</span></div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="preprocessor">       \</span></div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="preprocessor">template &lt;typename Type&gt;                                             \</span></div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="preprocessor">using Matrix##SizeSuffix = Matrix&lt;Type, Size, Size&gt;;                 \</span></div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;<span class="preprocessor">                                       \</span></div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;<span class="preprocessor">          \</span></div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;<span class="preprocessor">template &lt;typename Type&gt;                                             \</span></div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">using Vector##SizeSuffix = Matrix&lt;Type, Size, 1&gt;;                    \</span></div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor">                                       \</span></div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;<span class="preprocessor">          \</span></div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;<span class="preprocessor">template &lt;typename Type&gt;                                             \</span></div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;<span class="preprocessor">using RowVector##SizeSuffix = Matrix&lt;Type, 1, Size&gt;;</span></div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160; </div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;<span class="preprocessor">#define EIGEN_MAKE_FIXED_TYPEDEFS(Size)                            \</span></div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;<span class="preprocessor">                                     \</span></div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;<span class="preprocessor">  \</span></div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;<span class="preprocessor">template &lt;typename Type&gt;                                           \</span></div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;<span class="preprocessor">using Matrix##Size##X = Matrix&lt;Type, Size, Dynamic&gt;;               \</span></div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;<span class="preprocessor">                                     \</span></div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;<span class="preprocessor"> \</span></div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;<span class="preprocessor">template &lt;typename Type&gt;                                           \</span></div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;<span class="preprocessor">using Matrix##X##Size = Matrix&lt;Type, Dynamic, Size&gt;;</span></div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160; </div>
<div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga73a2c673745de956e66d30ad61fd4a7e">  533</a></span>&#160;EIGEN_MAKE_TYPEDEFS(2, 2)</div>
<div class="line"><a name="l00534"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga6d61b8a0039eeb04e6faf382b8635a7a">  534</a></span>&#160;EIGEN_MAKE_TYPEDEFS(3, 3)</div>
<div class="line"><a name="l00535"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga946841161df693bb792644ba410aa0f0">  535</a></span>&#160;EIGEN_MAKE_TYPEDEFS(4, 4)</div>
<div class="line"><a name="l00536"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga8a779d79defc9f822fa6ff5869c2ba6b">  536</a></span>&#160;EIGEN_MAKE_TYPEDEFS(<a class="code" href="namespaceEigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>, X)</div>
<div class="line"><a name="l00537"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga9fc5afaeb88d6cd4f2503dd6127b1ba8">  537</a></span>&#160;EIGEN_MAKE_FIXED_TYPEDEFS(2)</div>
<div class="line"><a name="l00538"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#gab22d239b05eafe7ac235325d454e7530">  538</a></span>&#160;EIGEN_MAKE_FIXED_TYPEDEFS(3)</div>
<div class="line"><a name="l00539"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga93eea03ee4428402191f86ef2239975e">  539</a></span>&#160;EIGEN_MAKE_FIXED_TYPEDEFS(4)</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160; </div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;template &lt;typename Type, <span class="keywordtype">int</span> Size&gt;</div>
<div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga2623c0d4641dda067fbdb9a009ef0c91">  544</a></span>&#160;using <a class="code" href="classEigen_1_1Matrix.html">Vector</a> = <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&lt;Type, Size, 1&gt;;</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160; </div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;template &lt;typename Type, <span class="keywordtype">int</span> Size&gt;</div>
<div class="line"><a name="l00549"></a><span class="lineno"><a class="line" href="group__matrixtypedefs.html#ga181118570e7a0bb1cf3366180061f14f">  549</a></span>&#160;using <a class="code" href="classEigen_1_1Matrix.html">RowVector</a> = <a class="code" href="classEigen_1_1Matrix.html">Matrix</a>&lt;Type, 1, Size&gt;;</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160; </div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">#undef EIGEN_MAKE_TYPEDEFS</span></div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor">#undef EIGEN_MAKE_FIXED_TYPEDEFS</span></div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160; </div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;} <span class="comment">// end namespace Eigen</span></div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160; </div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;<span class="preprocessor">#endif </span><span class="comment">// EIGEN_MATRIX_H</span></div>
<div class="ttc" id="aclassEigen_1_1DenseBase_html"><div class="ttname"><a href="classEigen_1_1DenseBase.html">Eigen::DenseBase</a></div><div class="ttdoc">Base class for all dense matrices, vectors, and arrays.</div><div class="ttdef"><b>Definition:</b> DenseBase.h:42</div></div>
<div class="ttc" id="aclassEigen_1_1DenseBase_html_a58ca41d9635a8ab3c5a268ef3f7f0d75"><div class="ttname"><a href="classEigen_1_1DenseBase.html#a58ca41d9635a8ab3c5a268ef3f7f0d75">Eigen::DenseBase::innerSize</a></div><div class="ttdeci">EIGEN_CONSTEXPR Index innerSize() const</div><div class="ttdef"><b>Definition:</b> DenseBase.h:224</div></div>
<div class="ttc" id="aclassEigen_1_1DenseBase_html_a5feed465b3a8e60c47e73ecce83e39a2"><div class="ttname"><a href="classEigen_1_1DenseBase.html#a5feed465b3a8e60c47e73ecce83e39a2">Eigen::DenseBase::Scalar</a></div><div class="ttdeci">internal::traits&lt; Derived &gt;::Scalar Scalar</div><div class="ttdef"><b>Definition:</b> DenseBase.h:61</div></div>
<div class="ttc" id="aclassEigen_1_1DenseCoeffsBase_3_01Derived_00_01DirectWriteAccessors_01_4_html_a1fbabe7f12bcbfba3b9a448b1f5e46fa"><div class="ttname"><a href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01DirectWriteAccessors_01_4.html#a1fbabe7f12bcbfba3b9a448b1f5e46fa">Eigen::DenseCoeffsBase&lt; Derived, DirectWriteAccessors &gt;::derived</a></div><div class="ttdeci">Derived &amp; derived()</div><div class="ttdef"><b>Definition:</b> EigenBase.h:48</div></div>
<div class="ttc" id="aclassEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4_html_a858151a06b8c0ff407232d84e695dd73"><div class="ttname"><a href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#a858151a06b8c0ff407232d84e695dd73">Eigen::DenseCoeffsBase&lt; Derived, WriteAccessors &gt;::z</a></div><div class="ttdeci">Scalar &amp; z()</div><div class="ttdef"><b>Definition:</b> DenseCoeffsBase.h:453</div></div>
<div class="ttc" id="aclassEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4_html_af163a982f5a7ad7e5c3336990b3d7000"><div class="ttname"><a href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af163a982f5a7ad7e5c3336990b3d7000">Eigen::DenseCoeffsBase&lt; Derived, WriteAccessors &gt;::x</a></div><div class="ttdeci">Scalar &amp; x()</div><div class="ttdef"><b>Definition:</b> DenseCoeffsBase.h:437</div></div>
<div class="ttc" id="aclassEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4_html_af683e04b3926aaf4091581ca24ca09ad"><div class="ttname"><a href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#af683e04b3926aaf4091581ca24ca09ad">Eigen::DenseCoeffsBase&lt; Derived, WriteAccessors &gt;::w</a></div><div class="ttdeci">Scalar &amp; w()</div><div class="ttdef"><b>Definition:</b> DenseCoeffsBase.h:463</div></div>
<div class="ttc" id="aclassEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4_html_afeaa80359bf0c1311f91cdd74a2042a8"><div class="ttname"><a href="classEigen_1_1DenseCoeffsBase_3_01Derived_00_01WriteAccessors_01_4.html#afeaa80359bf0c1311f91cdd74a2042a8">Eigen::DenseCoeffsBase&lt; Derived, WriteAccessors &gt;::y</a></div><div class="ttdeci">Scalar &amp; y()</div><div class="ttdef"><b>Definition:</b> DenseCoeffsBase.h:443</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html"><div class="ttname"><a href="classEigen_1_1Matrix.html">Eigen::Matrix</a></div><div class="ttdoc">The matrix class, also used for vectors and row-vectors.</div><div class="ttdef"><b>Definition:</b> Matrix.h:182</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a1b552edeee11ced34c3e471ad00b820a"><div class="ttname"><a href="classEigen_1_1Matrix.html#a1b552edeee11ced34c3e471ad00b820a">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const std::initializer_list&lt; std::initializer_list&lt; Scalar &gt;&gt; &amp;list)</div><div class="ttdoc">Constructs a Matrix and initializes it from the coefficients given as initializer-lists grouped by ro...</div><div class="ttdef"><b>Definition:</b> Matrix.h:316</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a240e63c0fd30ba22eeeb2abb673d7c19"><div class="ttname"><a href="classEigen_1_1Matrix.html#a240e63c0fd30ba22eeeb2abb673d7c19">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar &amp;x, const Scalar &amp;y, const Scalar &amp;z)</div><div class="ttdoc">Constructs an initialized 3D vector with given coefficients.</div><div class="ttdef"><b>Definition:</b> Matrix.h:381</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a27a8efe2c7816924bb3fa81fae2eccfd"><div class="ttname"><a href="classEigen_1_1Matrix.html#a27a8efe2c7816924bb3fa81fae2eccfd">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(Index dim)</div><div class="ttdoc">Constructs a vector or row-vector with given dimension. This is only for vectors (either row-vectors ...</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a2b09269043e1ac5bed7f70108404af07"><div class="ttname"><a href="classEigen_1_1Matrix.html#a2b09269043e1ac5bed7f70108404af07">Eigen::Matrix::operator=</a></div><div class="ttdeci">Matrix &amp; operator=(const Matrix &amp;other)</div><div class="ttdoc">Assigns matrices to each other.</div><div class="ttdef"><b>Definition:</b> Matrix.h:208</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a315af106ac77958aa923080975476ec9"><div class="ttname"><a href="classEigen_1_1Matrix.html#a315af106ac77958aa923080975476ec9">Eigen::Matrix::operator=</a></div><div class="ttdeci">Matrix &amp; operator=(const EigenBase&lt; OtherDerived &gt; &amp;other)</div><div class="ttdoc">Copies the generic expression other into *this.</div><div class="ttdef"><b>Definition:</b> Matrix.h:238</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a32c538a4270278d978c259a044b119c8"><div class="ttname"><a href="classEigen_1_1Matrix.html#a32c538a4270278d978c259a044b119c8">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const EigenBase&lt; OtherDerived &gt; &amp;other)</div><div class="ttdoc">Copy constructor for generic expressions.</div><div class="ttdef"><b>Definition:</b> Matrix.h:412</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a3e8efdd1bc82593033a514b562144ca0"><div class="ttname"><a href="classEigen_1_1Matrix.html#a3e8efdd1bc82593033a514b562144ca0">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix()</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition:</b> Matrix.h:261</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a571b7a190bf9987498b2a04426777a86"><div class="ttname"><a href="classEigen_1_1Matrix.html#a571b7a190bf9987498b2a04426777a86">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(Index rows, Index cols)</div><div class="ttdoc">Constructs an uninitialized matrix with rows rows and cols columns.</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a5d58c5471254bae011db86ce33491fe0"><div class="ttname"><a href="classEigen_1_1Matrix.html#a5d58c5471254bae011db86ce33491fe0">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar &amp;a0, const Scalar &amp;a1, const Scalar &amp;a2, const Scalar &amp;a3, const ArgTypes &amp;... args)</div><div class="ttdef"><b>Definition:</b> Matrix.h:291</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a6cee96574e19e9544b0a92ea88ba0da9"><div class="ttname"><a href="classEigen_1_1Matrix.html#a6cee96574e19e9544b0a92ea88ba0da9">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar &amp;x, const Scalar &amp;y, const Scalar &amp;z, const Scalar &amp;w)</div><div class="ttdoc">Constructs an initialized 4D vector with given coefficients.</div><div class="ttdef"><b>Definition:</b> Matrix.h:392</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a725fc652d520c910061aefabcf7ae322"><div class="ttname"><a href="classEigen_1_1Matrix.html#a725fc652d520c910061aefabcf7ae322">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Matrix &amp;other)</div><div class="ttdoc">Copy constructor.</div><div class="ttdef"><b>Definition:</b> Matrix.h:404</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a85301ae1433ae244db658efeaca5e15b"><div class="ttname"><a href="classEigen_1_1Matrix.html#a85301ae1433ae244db658efeaca5e15b">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar &amp;x)</div><div class="ttdoc">Constructs an initialized 1x1 matrix with the given coefficient.</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_a9c6ab29ab3dd0db13433b3636c5ebfea"><div class="ttname"><a href="classEigen_1_1Matrix.html#a9c6ab29ab3dd0db13433b3636c5ebfea">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar *data)</div><div class="ttdoc">Constructs a fixed-sized matrix initialized with coefficients starting at data.</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_ab21dfb33fedb86d054bb3ff711134c04"><div class="ttname"><a href="classEigen_1_1Matrix.html#ab21dfb33fedb86d054bb3ff711134c04">Eigen::Matrix::Base</a></div><div class="ttdeci">PlainObjectBase&lt; Matrix &gt; Base</div><div class="ttdoc">Base class typedef.</div><div class="ttdef"><b>Definition:</b> Matrix.h:188</div></div>
<div class="ttc" id="aclassEigen_1_1Matrix_html_ad799b74bdca9f0218befcb18705a2ef8"><div class="ttname"><a href="classEigen_1_1Matrix.html#ad799b74bdca9f0218befcb18705a2ef8">Eigen::Matrix::Matrix</a></div><div class="ttdeci">Matrix(const Scalar &amp;x, const Scalar &amp;y)</div><div class="ttdoc">Constructs an initialized 2D vector with given coefficients.</div></div>
<div class="ttc" id="aclassEigen_1_1PlainObjectBase_html"><div class="ttname"><a href="classEigen_1_1PlainObjectBase.html">Eigen::PlainObjectBase</a></div><div class="ttdoc">Dense storage base class for matrices and arrays.</div><div class="ttdef"><b>Definition:</b> PlainObjectBase.h:102</div></div>
<div class="ttc" id="aclassEigen_1_1PlainObjectBase_html_a09c4b519ee4c635144581e9fe03b6174"><div class="ttname"><a href="classEigen_1_1PlainObjectBase.html#a09c4b519ee4c635144581e9fe03b6174">Eigen::PlainObjectBase::_set</a></div><div class="ttdeci">Derived &amp; _set(const DenseBase&lt; OtherDerived &gt; &amp;other)</div><div class="ttdoc">Copies the value of the expression other into *this with automatic resizing.</div><div class="ttdef"><b>Definition:</b> PlainObjectBase.h:775</div></div>
<div class="ttc" id="aclassEigen_1_1PlainObjectBase_html_a992d58b5453e441dcfc80f21c2bfd1d7"><div class="ttname"><a href="classEigen_1_1PlainObjectBase.html#a992d58b5453e441dcfc80f21c2bfd1d7">Eigen::PlainObjectBase::coeffRef</a></div><div class="ttdeci">Scalar &amp; coeffRef(Index rowId, Index colId)</div><div class="ttdef"><b>Definition:</b> PlainObjectBase.h:187</div></div>
<div class="ttc" id="aclassEigen_1_1PlainObjectBase_html_ac54123f62de4c46a9107ff53890b6116"><div class="ttname"><a href="classEigen_1_1PlainObjectBase.html#ac54123f62de4c46a9107ff53890b6116">Eigen::PlainObjectBase&lt; Matrix&lt; Scalar_, Rows_, Cols_, Options_, MaxRows_, MaxCols_ &gt; &gt;::data</a></div><div class="ttdeci">const Scalar * data() const</div><div class="ttdef"><b>Definition:</b> PlainObjectBase.h:259</div></div>
<div class="ttc" id="aclassEigen_1_1PlainObjectBase_html_afbf3af8d6195c9b1b2103c2dd1231247"><div class="ttname"><a href="classEigen_1_1PlainObjectBase.html#afbf3af8d6195c9b1b2103c2dd1231247">Eigen::PlainObjectBase::operator=</a></div><div class="ttdeci">Derived &amp; operator=(const PlainObjectBase &amp;other)</div><div class="ttdef"><b>Definition:</b> PlainObjectBase.h:461</div></div>
<div class="ttc" id="agroup__enums_html_ggaacded1a18ae58b0f554751f6cdf9eb13a56908522e51443a0aa0567f879c2e78a"><div class="ttname"><a href="group__enums.html#ggaacded1a18ae58b0f554751f6cdf9eb13a56908522e51443a0aa0567f879c2e78a">Eigen::DontAlign</a></div><div class="ttdeci">@ DontAlign</div><div class="ttdef"><b>Definition:</b> Constants.h:327</div></div>
<div class="ttc" id="agroup__enums_html_ggaacded1a18ae58b0f554751f6cdf9eb13a77c993a8d9f6efe5c1159fb2ab07dd4f"><div class="ttname"><a href="group__enums.html#ggaacded1a18ae58b0f554751f6cdf9eb13a77c993a8d9f6efe5c1159fb2ab07dd4f">Eigen::RowMajor</a></div><div class="ttdeci">@ RowMajor</div><div class="ttdef"><b>Definition:</b> Constants.h:323</div></div>
<div class="ttc" id="agroup__flags_html_ga1a306a438e1ab074e8be59512e887b9f"><div class="ttname"><a href="group__flags.html#ga1a306a438e1ab074e8be59512e887b9f">Eigen::PacketAccessBit</a></div><div class="ttdeci">const unsigned int PacketAccessBit</div><div class="ttdef"><b>Definition:</b> Constants.h:96</div></div>
<div class="ttc" id="agroup__flags_html_ga4b983a15d57cd55806df618ac544d09e"><div class="ttname"><a href="group__flags.html#ga4b983a15d57cd55806df618ac544d09e">Eigen::LinearAccessBit</a></div><div class="ttdeci">const unsigned int LinearAccessBit</div><div class="ttdef"><b>Definition:</b> Constants.h:132</div></div>
<div class="ttc" id="agroup__flags_html_gabf1e9d0516a933445a4c307ad8f14915"><div class="ttname"><a href="group__flags.html#gabf1e9d0516a933445a4c307ad8f14915">Eigen::DirectAccessBit</a></div><div class="ttdeci">const unsigned int DirectAccessBit</div><div class="ttdef"><b>Definition:</b> Constants.h:157</div></div>
<div class="ttc" id="agroup__flags_html_gae4f56c2a60bbe4bd2e44c5b19cbe8762"><div class="ttname"><a href="group__flags.html#gae4f56c2a60bbe4bd2e44c5b19cbe8762">Eigen::RowMajorBit</a></div><div class="ttdeci">const unsigned int RowMajorBit</div><div class="ttdef"><b>Definition:</b> Constants.h:68</div></div>
<div class="ttc" id="anamespaceEigen_html"><div class="ttname"><a href="namespaceEigen.html">Eigen</a></div><div class="ttdoc">Namespace containing all symbols from the Eigen library.</div><div class="ttdef"><b>Definition:</b> Core:139</div></div>
<div class="ttc" id="anamespaceEigen_html_a62e77e0933482dafde8fe197d9a2cfde"><div class="ttname"><a href="namespaceEigen.html#a62e77e0933482dafde8fe197d9a2cfde">Eigen::Index</a></div><div class="ttdeci">EIGEN_DEFAULT_DENSE_INDEX_TYPE Index</div><div class="ttdoc">The Index type as used for the API.</div><div class="ttdef"><b>Definition:</b> Meta.h:59</div></div>
<div class="ttc" id="anamespaceEigen_html_ad81fa7195215a0ce30017dfac309f0b2"><div class="ttname"><a href="namespaceEigen.html#ad81fa7195215a0ce30017dfac309f0b2">Eigen::Dynamic</a></div><div class="ttdeci">const int Dynamic</div><div class="ttdef"><b>Definition:</b> Constants.h:24</div></div>
<div class="ttc" id="astructEigen_1_1EigenBase_html"><div class="ttname"><a href="structEigen_1_1EigenBase.html">Eigen::EigenBase</a></div><div class="ttdef"><b>Definition:</b> EigenBase.h:32</div></div>
<div class="ttc" id="astructEigen_1_1EigenBase_html_a554f30542cc2316add4b1ea0a492ff02"><div class="ttname"><a href="structEigen_1_1EigenBase.html#a554f30542cc2316add4b1ea0a492ff02">Eigen::EigenBase::Index</a></div><div class="ttdeci">Eigen::Index Index</div><div class="ttdoc">The interface type of indices.</div><div class="ttdef"><b>Definition:</b> EigenBase.h:41</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_a62d91f57b5fefafb116d3f5c1ce792a.html">Eigen</a></li><li class="navelem"><a class="el" href="dir_f84311377820247c2dbcf5d6a63ab308.html">src</a></li><li class="navelem"><a class="el" href="dir_c5b8aa1b6d8d74c5127fb52cc05e6083.html">Core</a></li><li class="navelem"><b>Matrix.h</b></li>
    <li class="footer">Generated on Thu Apr 21 2022 13:07:51 for Eigen by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
